package com.yxinsur.imc.business.service;

import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yxinsur.imc.business.domain.ImcRateFactorKey;
import com.yxinsur.imc.business.form.RateFactorForm;
import com.yxinsur.imc.business.vo.InsFactorVo;
import com.yxinsur.imc.business.vo.RateFactorKeyVo;

/**
 * 产品费率因子KEYService接口
 * 
 * @author imc
 * @date 2021-03-30
 */
public interface IImcRateFactorKeyService  extends IService<ImcRateFactorKey>
{
    /**
     * 查询产品费率因子KEY列表
     * 
     * @param rateFactorForms 产品费率因子KEY
     * @return 产品费率因子KEY集合
     */
    public List<RateFactorKeyVo> selectImcRateFactorKeyList(RateFactorForm rateFactorForms);

    /**
     * 查询产品所有因子列表
     *
     * @param repoInsId 产品ID
     * @return 所有因子列表
     */
    public List<InsFactorVo> getInsFactorListByRepoInsId(Long repoInsId);

    /**
     * 新增产品费率因子KEY
     * 
     * @param reporInsId 险种ID
     * @param rateFactorKeyForms 产品费率因子
     * @return 结果
     */
    public int insertImcRateFactor(Long reporInsId,List<RateFactorForm> rateFactorKeyForms);
    /**
     * 批量删除产品费率因子KEY
     * 
     * @param repoInsIds 需要删除的产品费率因子KEYID
     * @return 结果
     */
    public int deleteImcRateFactorKeyByRepoInsIds(Long[] repoInsIds);
}
